//#pragma once
//#include<vector>
//#include<string>
//#include<iostream>
//using namespace std;
//template<size_t N>
//class bitset
//{
//public:
//	bitset()
//	{
//		bits_.resize(N/8+1,0);
//	}
//	void set(size_t x)
//	{
//		size_t i = x / 8;
//		size_t j = x % 8;
//		bits_[i] |= (1<<j);
//	}
//	void reset(size_t x)
//	{
//		size_t i = x / 8;
//		size_t j = x % 8;
//		bits_[i] &= ~(1 << j);
//	}
//	bool test(size_t x)
//	{
//		size_t i = x / 8;
//		size_t j = x % 8;
//		return bits_[i] & (1<<j);
//	}
//	void print()
//	{
//		for (int i=0;i<=N;i++)
//		{
//			if (test(i))
//			{
//				std::cout << i << " ";
//			}
//		}
//	}
//private:
//	vector<char> bits_;
//};
//int main()
//{
//	bitset<5> bs;
//	bs.set(1);
//	bs.set(2);
//	bs.set(3);
//	bs.set(4);
//
//	bs.set(5);
//	std::cout<<bs.test(1)<<std::endl;
//	std::cout << bs.test(3) << std::endl;
//	bs.reset(1);
//	std::cout << bs.test(1) << std::endl;
//	bs.print();
//	return 0;
//}